1. Field of the Invention
Embodiments of the present invention generally relate to server networks, and more particularly, to a method and apparatus for prioritizing provisioning data within a provisioning server.
2. Description of the Related Art
Modern computer networks generally comprise a plurality of user computers connected to one another and to a computer server via a communications network. To provide redundancy and high availability of information and applications that are executed upon a computer server, multiple computer servers may be arranged in a cluster, i.e., forming a server cluster. Such server clusters are available under the trademark VERITAS CLUSTER SERVER from Veritas Software Corporation of Mountain View, Calif. In a server cluster, a plurality of servers communicate with one another to facilitate failover redundancy such that when software or hardware, i.e., computer resources, become inoperative on one's server, another server can quickly execute the same software that was running on the inoperative server substantially without interruption. As such, a user of services that are supported by a server cluster would not be substantially impacted by an inoperative server or software. To improve the overall effectiveness of the server cluster, specialized provisioning servers can be configured to distribute data, files, and applications (i.e., a “snapshot” of a failed or failing server) to target servers. Once the target server contains the snapshot, the target server operates in the same manner as the failed or failing server and the failed or failing server can be deactivated for repairs or replacement.
As corporations and businesses continue to grow, so are the demands of their respective computer network infrastructures. Directly related to these demands is the overwhelming need for more efficient deployment, operation, and revision of data stored in the servers populating a computer network. Among the numerous files typically stored in a given production server, approximately only 10 percent could be classified as mandatory or essential files that are necessary to initialize operation of a server. Moreover, these essential files are required nearly 90 percent of the time the server is functioning. In contrast, roughly 90 percent of the files stored on a server can be considered nonessential in regard to the initial operation of the server and are only accessed 10 percent of the time during normal operation.
Presently, when a target server requires provisioning, either because it is new or needs to have files reinstalled, the software loading process can prove to be extremely time consuming. This problem can be attributed to the arbitrary distribution of software to the target server. More specifically, the files are randomly provisioned without any consideration to an individual file's importance and functionality. As such, a target server awaits complete provisioning before the target server begins operation.
Therefore, there is a need in the art for a method and apparatus for prioritizing the files stored on a provisioning server and subsequently provisioning these files to a target server in accordance with the prioritization.